package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.system.domain.InvestigationQuestion;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.*;

import java.util.Date;
import java.util.List;

import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 问卷业务对象
 *
 * @author ruoyi
 * @date 2024-12-13
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class InvestigationBo extends BaseEntity {

    /**
     *
     */
    @NotNull(message = "不能为空", groups = {EditGroup.class})
    private Long id;

    /**
     * 类型：1模板、2问卷
     */
    @NotNull(message = "类型不能为空", groups = {AddGroup.class, EditGroup.class})
    private Integer type;

    /**
     * 名称
     */
    @NotBlank(message = "名称不能为空", groups = {AddGroup.class, EditGroup.class})
    private String name;

    /**
     * 描述
     */
    @NotBlank(message = "描述不能为空", groups = {AddGroup.class, EditGroup.class})
    private String description;

    /**
     * 发布状态：0未发布、1已发布
     */
    @NotNull(message = "发布状态不能为空", groups = {AddGroup.class, EditGroup.class})
    private Integer pubStatus;

    private Long answerCount;

    private String startDate;
    private String endDate;

    /**
     * 题目列表
     */
    @NotNull(message = "题目列表不能为空", groups = {AddGroup.class, EditGroup.class})
    List<InvestigationQuestion> questions;
}
